查看原文
其他

Google 开源 Docker 镜像差异分析工具 container-diff

2017-11-30 开源最前线
开源最前线(ID:OpenSourceTop) 猿妹 整编

综合自:https://github.com/GoogleCloudPlatform/container-diff


近日,Google 发布了一个名为 container-diff 的开源项目。


容器镜像分析对比工具 container-diff


授权协议:Apache

开发语言:Google Go

操作系统:跨平台

开发厂商:Google

Github:https://github.com/GoogleCloudPlatform/container-diff


container-diff 简介


container-diff 是 Google 开源的一个分析和比较容器镜像的工具,可用来分析 Docker 镜像之间的差异。可通过以下几个不同的标准(角度)来检查镜像:

● Docker 镜像历史

● 镜像文件系统

● Apt 包管理器

● pip 包管理器

● npm 包管理器


这些分析可以在单个镜像上执行,也可以在两个镜像上进行执行比较。该工具可以帮助用户更好地理解他们的镜像内部正在发生的变化,并让他们更好地了解他们的镜像所包含的内容。



Docker 简介


Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。



容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包装系统。



container-diff 镜像分析


当你要使用 container-diff analyze 对单个镜像执行分析时,你需要一个Docker映像(以ID,tarball的形式 )如下:



多个镜像对比:




container-diff 安装


苹果系统:

curl -LO https://storage.googleapis.com/container-diff/latest/container-diff-darwin-amd64 && chmod + x container-diff-darwin-amd64 && sudo mv container-diff-darwin-amd64 / usr / local / bin目录/容器DIFF


Linux 系统:

curl -LO https://storage.googleapis.com/container-diff/latest/container-diff-linux-amd64 && chmod + x container-diff-linux-amd64 && sudo mv container-diff-linux-amd64 / usr / local / bin目录/容器DIFF


不想使用 sudo 的话还可以这样:

curl -LO https://storage.googleapis.com/container-diff/latest/container-diff-linux-amd64 && chmod + x container-diff-linux-amd64 && mkdir -p $ HOME / bin &&  export PATH = $路径:$ HOME / bin && mv container-diff-linux-amd64 $ HOME / bin / container-diff


container-diff 镜像来源


container-diff 支持位于本地 Docker 守护程序和远程注册表中的 Docker 镜像。要显式指定本地图像,请 daemon:// 在图像名称上使用前缀; 类似地,对于明确的远程图像,使用 remote:// 前缀。


另外,可以直接向工具提供 tarball。确保你的文件有一个有效的 tar 扩展名(.tar,.tar.gz,.tgz)。



注意:container-diff 不直接支持 Docker ID 引用的图片。如果你的镜像在你的本地 Docker 进程中只有一个 ID,那么 docker tag 在使用 container-diff 之前,你需要使用它来标记它。


认证


当使用注册表作为图像源时,Container-diff 支持 docker-credential-helpers 进行身份验证。确保在使用 container-diff 之前配置了您的凭证助手,并且它应该自动运行。


对于 Google 容器注册表,请确保 docker-credential-gcr 已经按照这些说明配置了二进制文件并在您的路径上。


据 Google 介绍,container-diff 还可以提供自动变更日志管理,与持续集成系统集成,并支持 JSON 格式输出,完全可将其作为开发流程的一部分。


附:新开源报道汇总

《【新开源报道 24】美团点评开源MySQL闪回工具 —— MyFlash》

《【新开源报道 23】IBM 推出首套开源现代化字体 —— IBM Plex》

《【新开源报道 22】Microsoft 开源用于 VS Code 的 Java Debugger》

《【新开源报道 21】阿里开源容器技术Pouch和P2P文件分发系统“蜻蜓”》

《【新开源报道 20】Uber正式开源其分布式跟踪系统Jaeger》

《【新开源报道 19】Uber与斯坦福大学开源深度概率编程语言Pyro》

《【新开源报道 18】谷歌开放内部工具 Colaboratory 来协助 AI 开发》

《【新开源报道 17】这波开源满分!清华大学开源网络嵌入的工具包 —— OpenNE

《【新开源报道 16】AI开发者福音!微软亚马逊联合发布深度学习库 Gloun》

《【新开源报道 15】谷歌发布量子开源软件,量子计算机对科学家免费开放 》

《【新开元报道 14】微软开源用于Spark的深度学习库MMLSpark》

《【新开源报道 13】Facebook 开源帮助开发者消灭最顽固的软件 bug 的工具》

《【新开源报道 12】不只是阿里巴巴的操作系统,AliOS 宣布开源》

《【新开源报道 11】重磅!阿里巴巴正式开源全球化OpenMessaging和ApsaraCache项目》

《【新开源报道 10】IBM 和谷歌等巨头联手为开发者推出开源容器安全工具Grafeas》

《【新开源报道 9】Google开源Abseil,为C++和Python开发提供支持》

《【新开源报道 8】serverless 领域的福音!Oracle 宣布开源 Fn project》

《【新开源报道 7】苹果在 GitHub 上公布 macOS 和 iOS 内核源码》

《【新开源报道 6】百度开源移动端深度学习框架mobile-deep-learning(MDL)》

《【新开源报道 5】百度正式开源其 RPC 框架 brpc》

《【新开源报道 4】IBM 开源动态的应用服务器运行时环境 Open Liberty》

《【新开源报道 3】微信后台团队最近开源力作:PhxQueue分布式队列》

《【新开源报道 2】喜大普奔!阿里即将开源 ApsaraCache,云数据库 Redis 版分支》

【新开源报道 1】腾讯 Web UI 解决方案 QMUI Web 正式回迁开源》



●本文编号98,以后想阅读这篇文章直接输入98即可

●输入m获取文章目录

↓↓↓ 点击"阅读原文" 进入GitHub详情页 

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存